分布式事务：一次事务设计多个系统之间的网络协同完成的过程称做分布式事务
SOA架构：面向服务架构，例如 将服务分为后台管理系统、交易系统
微服务架构：粒度更加精确
CAP：一致性（Consistency）、可用性（Availability）、分区容错性（Partition tolerance）
C(一致性)：读写分离，写入主数据库，将数据同步到从（读）数据库，
		同步期间将数据库锁定，待数据库同步完成后再释放锁，如果节点同步失败，则返回错误信息，不返回旧数据
A(可用性):数据库资源不允许被锁定，不能返回错误信息或者返回超时
P(分区容错性):当出现多个节点之间通信失败的情况，此时系统任然可以对外提供服务。比如在数据同步异常的情况，不影响读写

什么情况会有分布式事务的产生
1、单个应用多个数据源
2、多个应用操作一个数据源或者多个数据源


解决方案
2PC方案
通过加入一层中间层，从数据库层面上，集中管理多个服务线程的事务。分为准备阶段和提交阶段，同步堵塞，
要确保每一个事务准备完成再发出提交命令，如果第二阶段提交失败，会不断进行重试，以为可能有部分数据已经
成功写入。
存在问题：单点故障问题



